초보자도 할 수 있는 Amazon SES로 메일 보내기
소개
안녕하세요! 클래스메소드 금상원 입니다. 이번 블로그에서는 SES에 대해 알아보고 간단한 메일 테스트를 해보도록 하겠습니다.
Amazon SES란?
사용자의 이메일 주소와 도메인을 사용해 SMTP방식과 API방식으로 이메일을 보내고 받기 위한 경제적이고 손쉬운 방법을 제공하는 아마존의 이메일 플랫폼입니다.
작동방식
- 이메일 발신자 쪽에서 Amazon SES에게 하나 이상의 수신자에게 이메일을 전송하는 요청을 보냄
- 요청이 유효하면 Amazon SES가 이메일을 수락
- Amazon SES는 인터넷을 통해 수신자의 수신 장치에 메시지를 보냅니다
- 이 시점에서 다양한 가능성이 존재합니다. 예:
- ISP가 성공적으로 메시지를 수신자의 수신함으로 전송합니다.
- 수신자의 이메일 주소가 존재하지 않습니다. 따라서 ISP가 Amazon SES로 반송 메일 알림을 전송합니다.
- 수신자가 메시지를 수신하지만 이를 스팸으로 여겨 ISP에게 수신 거부를 제기합니다.
이메일 형식
이메일 방식의 구성은 아래의 내용 처럼 헤더, 본문 및 엔벌로프로 구성됩니다.
- 헤더 - 라우팅 지침과 메시지에 대한 다양한 정보를 포함합니다. (발신자 주소, 수신자 주소, 제목, 날짜 등)
- 본문 - 메시지 텍스트 자체를 포함합니다.
- 엔벨로프 - SMTP 세션에서 이메일 클라이언트와 메일 서버 사이에 통신되는 실제 라우팅 정보를 포함합니다.
참고 자료
이점
대규모 이메일 솔루션을 구축하기 위해서는 이메일 서버 관리, 네트워크 구성, IP 주소 신뢰도 등의 인프라 문제를 해결해야 하기 때문에 복잡하고, 많은 타사의 이메일 솔루션은 초기 비용이 필요하게 됩니다만 Amazon SES를 사용하시면 간단하고 비용효율적으로 구축할 수 있습니다.
요금
서비스 활당량
전송 활당량
- 계정이 샌드박스에 있는 경우 24시간당 최대 200개의 이메일을 보낼 수 있습니다만, 샌드박스 외부에 있을경우 사용사례에 따라 달라집니다.
- 계정이 샌드박스에 있는 경우 초당 이메일 1개를 보낼 수 있습니다만, 샌드박스 외부에 있을경우 사용사례에 따라 달라집니다.
- AWS Service Quotas 콘솔을 통해 제출하여 활당량과 속도를 증가 할 수 있습니다. Amazon SES 발신 할당량 높이기
메시지 할당량
- 메시지당 10MB(base64 인코딩 후)
- 증가 요청은 현재 지원 센터를 통해서만 지원됩니다. Amazon SES 발신 할당량 높이기
발신자 및 수신자 할당량
- 메시지당 수신자 50명 (수신자는 모든 "To", "CC" 또는 "BCC" 주소입니다.)
- AWS 리전당 자격 증명 10,000개.
이벤트 게시와 관련된 할당량
- 최대 구성 세트 10,000개
- 구성 세트 이름에는 최대 64개의 영숫자, 하이픈(-) 및 밑줄(_)을 포함할 수 있습니다. (공백, 억양 표시가 되어 있는 문자 또는 기타 특수 문자 사용불가)
- 구성 세트당 최대 이벤트 대상 10개
- CloudWatch 이벤트 대상당 10개
이메일 템플릿 할당량
- AWS 리전당 최대 이메일 템플릿 수 10,000개
- 최대 템플릿 크기 500KB
- 각 템플릿의 최대 대체 값 수 무제한
- 각 템플릿 이메일의 최대 수신인 수 50개 (대상은 "To", "CC", "BCC" 줄의 이메일 주소입니다.)
이메일 수신 관련 할당량
- 수신 규칙 세트당 최대 수신 규칙 수 200개
- 수신 규칙당 최대 작업 수 10개
- 수신 규칙당 최대 수신자 수 100개
- AWS 계정당 최대 수신 규칙 세트 수 40게
- AWS 계정당 최대 IP 주소 필터 수 100개
- Amazon S3 버킷에 저장할 수 있는 최대 이메일 용량(헤더 포함) 30MB
- 메시지 크기 증가 요청은 현재 지원 센터를 통해서만 지원됩니다. Amazon SES 수신 할당량 높이기
- Amazon SNS 알림에 게시할 수 있는 최대 이메일 용량(헤더 포함) 150KB
일반 할당량
- Amazon SES API 작업은 초당 요청 하나로 제한됩니다. (SendEmail, SendRawEmail 및 SendTemplatedEmail 제외)
자격 증명 유형
액세스할 대상 | 사용할 자격 증명 |
---|---|
아마존 SES API | AWS 액세스 키 |
Amazon SES SMTP 인터페이스 | SMTP 자격 증명 |
Amazon SES 콘솔 | IAM 사용자 이름과 암호 또는 이메일 주소와 암호 |
Amazon SES로 메일 보내보기
aws 검색창에서 SES를 검색한 후 Create identity버튼을 클릭합니다.
Email address를 선택하고 아래의 Email address를 입력하고 Create identity 버튼을 클릭합니다.
위에서 입력한 메일에서 no-reply-aws@amazon.com으로 부터온 메일을 5분안에 확인하고 링크하여 사용가능한 메일임을 인증합니다.
(클릭 후 aws관련 사이트가 열리면 끝입니다.)
위의 방법으로 2개의 메일을 인증한 후 한개의 메일을 클릭하고 Send Test Email을 클릭합니다.
- formatted을 선택
- From-address에 송신자 메일을 확인
- Scenario을Custom을 선택
- Custom recipient에 수신자 메일 입력
- subject에 메세지 제목 입력
- body optional내용 입력후 송신
메일이 도착된 것을 확인합니다.
마무리
이번 블로그에서 Amazon SES에 대한 기본 내용설명과 간단한 테스트를 해보았습니다. 저렴한 비용과 간단한 방법으로 이메일 솔루션을 필요로 하신 분들께서는 Amazon SES를 사용하시면 좋을것 같습니다.
##참고한 자료 Amazon SES이란 무엇인가요?
본 블로그 게시글을 보시고 문의 사항이 있으신 분들은 클래스메소드코리아 (info@classmethod.kr)로 연락 주시면 빠른 시일 내 담당자가 회신 드릴 수 있도록 하겠습니다 !